package com.feicheng.iou.service;

import com.feicheng.iou.entity.Payment;
import com.feicheng.iou.entity.PaymentItem;
import com.baomidou.mybatisplus.extension.service.IService;
import com.feicheng.iou.entity.PaymentOptions;
import com.feicheng.iou.entity.ProjectService;
import com.feicheng.iou.pojo.PaymentItemPOJO;
import com.feicheng.iou.result.ResultInfoV110;

import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author tianchunlei
 * @since 2021-06-28
 */
public interface PaymentItemService extends IService<PaymentItem> {


       //计算还款计划列表
       ResultInfoV110 calculatePaymentItemList(PaymentOptions paymentOptions, BigDecimal amount);

       //根据支付id查询分期列表
       ResultInfoV110 selectPaymentItemListByPid(Integer paymentId);

       //查询分期列表
       ResultInfoV110 selectPaymentItemList(PaymentItemPOJO paymentItemPOJO);

       //审核已还款
       ResultInfoV110 confirmPayment(Integer id, HttpServletRequest request);

       //查询逾期未还数量
       ResultInfoV110 countUnpaid();

       //查询逾期未还信息
       ResultInfoV110 selectUnpaid();

       //检查是否逾期
       ResultInfoV110 checkOverdue();

       //查询已还款待确认还数量
       ResultInfoV110 countReviewed();

       //查询已还款待确认列表信息
       ResultInfoV110 selectReviewed();

       //手动还款接口
       ResultInfoV110 repayment(Integer id,String payMethod, HttpServletRequest request);
}
